package com.ihrm.company.mapper;

import com.ihrm.domain.company.Company;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;

/**
 * // Hibernate提供实现
 * 自定义dao接口继承
 *      JpaRepository<实体类，主键属性类型>
 *      JpaSpecificationExecutor<实体类>
 *
 *  Hibernate的主要优势
 * 数据库无关性：支持多种数据库，切换数据库时只需修改配置
 * 减少样板代码：自动生成SQL，减少手动编写SQL的工作量
 * 缓存机制：提供一级缓存和二级缓存，提高性能
 * 事务管理：集成Spring事务管理，简化事务处理
 * 延迟加载：支持延迟加载，优化性能
 * 工作流程
 * 应用程序调用Repository方法
 * Hibernate根据映射关系生成SQL语句
 * 通过JDBC连接数据库执行SQL
 * 将结果转换为Java对象返回
 */
public interface CompanyMapper extends JpaRepository<Company,String>, JpaSpecificationExecutor<Company> {
}
